/* Shared profile styles. Every content rule is scoped for public-page reuse. */
.rmc-website-profile {
  container-type: inline-size;
  isolation: isolate;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  background: #fff;
  color: #333;
  font: 15px/1.65 Arial, Helvetica, sans-serif;
  text-align: left;
  overflow-wrap: anywhere;
}
.rmc-website-profile, .rmc-website-profile * { box-sizing: border-box; }
.rmc-website-profile :where(h1,h2,h3,h4,p,figure,blockquote,fieldset) { margin: 0; font-family: inherit; }
.rmc-website-profile .rmc-profile-heading {
  margin: 0; padding: 20px 24px 12px;
  font-size: var(--rmc-profile-size, 28px); font-weight: 800; line-height: 1.25;
}
.rmc-website-profile .rmc-profile-text {
  margin: 0; padding: 10px 24px; font-size: var(--rmc-profile-size, 15px);
  line-height: 1.7; white-space: pre-wrap;
}
.rmc-website-profile .rmc-profile-richtext { padding: 10px 24px; font-size: 15px; line-height: 1.7; }
.rmc-website-profile .rmc-profile-richtext :where(img,video,iframe,table) { max-width: 100%; }
.rmc-website-profile .rmc-profile-richtext a { color: #d4006a; text-decoration: underline; }
.rmc-website-profile .rmc-profile-customcode { width: 100%; overflow: hidden; }
.rmc-website-profile .rmc-profile-richtext :where(p,ul,ol) { margin: 0 0 12px; }
.rmc-website-profile .rmc-profile-pasted-design { padding-top: 18px; padding-bottom: 18px; }
.rmc-website-profile .rmc-profile-pasted-design :where(h1,h2,h3,h4,h5,h6) { margin: 24px 0 12px; color: #111; line-height: 1.3; }
.rmc-website-profile .rmc-profile-pasted-design :where(img) { display: block; height: auto; margin: 12px auto 20px; }
.rmc-website-profile .rmc-profile-logo { display: flex; align-items: center; gap: 14px; padding: 20px 24px; }
.rmc-website-profile .rmc-profile-logo-image,
.rmc-website-profile .rmc-profile-initials { width: 56px; height: 56px; flex: 0 0 56px; object-fit: contain; }
.rmc-website-profile .rmc-profile-initials { display: grid; place-items: center; border-radius: 8px; background: #f5f5f5; color: #333; font-size: 16px; font-weight: 800; }
.rmc-website-profile .rmc-profile-identity { min-width: 0; }
.rmc-website-profile .rmc-profile-company-name { margin: 0; font-size: 16px; font-weight: 800; line-height: 1.4; color: #111; }
.rmc-website-profile .rmc-profile-company-tagline { margin: 2px 0 0; font-size: 12px; line-height: 1.5; color: #777; }
.rmc-website-profile .rmc-profile-banner { padding: var(--rmc-profile-banner-space, 80px) 24px max(24px, calc(var(--rmc-profile-banner-space, 80px) / 5)); text-align: center; }
.rmc-website-profile .rmc-profile-banner-title { margin: 0; color: inherit; font-size: 30px; font-weight: 800; line-height: 1.25; }
.rmc-website-profile .rmc-profile-banner-subtitle { margin: 10px 0 0; color: inherit; opacity: .85; font-size: 16px; line-height: 1.5; }
.rmc-website-profile .rmc-profile-figure { margin: 0; padding: 16px 24px; }
.rmc-website-profile .rmc-profile-image { max-width: 100%; height: auto; display: block; border-radius: 6px; }
.rmc-website-profile .rmc-profile-caption { margin-top: 6px; color: #777; font-size: 12px; text-align: center; }
.rmc-website-profile .rmc-profile-action { padding: 14px 24px; text-align: center; }
.rmc-website-profile .rmc-profile-button {
  display: inline-block; max-width: 100%; padding: 11px 28px;
  border: 2px solid var(--rmc-profile-accent, #d4006a); border-radius: 24px;
  background: var(--rmc-profile-accent, #d4006a); color: #fff;
  font: 700 14px/1.5 Arial, Helvetica, sans-serif; text-decoration: none;
  white-space: normal; overflow-wrap: anywhere;
}
.rmc-website-profile .rmc-profile-button-outline { background: transparent; color: var(--rmc-profile-accent, #d4006a); }
.rmc-website-profile .rmc-profile-link { color: #d4006a; font-weight: 700; text-decoration: underline; }
.rmc-website-profile :where(a,button):focus-visible { outline: 2px solid #1565c0; outline-offset: 3px; }
.rmc-website-profile .rmc-profile-quote { margin: 12px 24px; padding: 16px 20px; border-left: 4px solid; background: #fafafa; }
.rmc-website-profile .rmc-profile-quote p { margin: 0; font-size: 18px; font-style: italic; }
.rmc-website-profile .rmc-profile-quote cite { display: block; margin-top: 6px; font-size: 13px; color: #777; }
.rmc-website-profile .rmc-profile-columns,
.rmc-website-profile .rmc-profile-gallery { display: grid; grid-template-columns: repeat(var(--rmc-profile-columns, 2), minmax(0,1fr)); gap: 20px; padding: 16px 24px; }
.rmc-website-profile .rmc-profile-column { min-width: 0; white-space: pre-wrap; }
.rmc-website-profile .rmc-profile-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; border-radius: 6px; }
.rmc-website-profile .rmc-profile-video { display: block; width: 100%; height: auto; aspect-ratio: 16/9; border: 0; border-radius: 6px; }
.rmc-website-profile .rmc-profile-divider { padding: 8px 24px; }
.rmc-website-profile .rmc-profile-divider hr { margin: 0; border: 0; }
.rmc-website-profile .rmc-profile-tagline { margin: 0; padding: 14px 24px; font-size: 20px; font-weight: 700; font-style: italic; }
.rmc-website-profile .rmc-profile-social { display: flex; flex-wrap: wrap; gap: 16px; padding: 14px 24px; }
.rmc-website-profile .rmc-profile-contact { padding: 20px 24px; background: #f9f9f9; }
.rmc-website-profile .rmc-profile-contact-title { margin: 0 0 14px; font-size: 16px; font-weight: 700; line-height: 1.4; }
.rmc-website-profile .rmc-profile-contact fieldset { min-width: 0; padding: 0; border: 0; }
.rmc-website-profile .rmc-profile-label { display: block; margin: 0 0 10px; font-size: 13px; }
.rmc-website-profile .rmc-profile-label :where(input,textarea) { display: block; width: 100%; padding: 9px 12px; border: 1px solid #ddd; border-radius: 6px; background: #fff; color: #555; font: 14px/1.5 Arial, Helvetica, sans-serif; }
@container (max-width: 640px) {
  .rmc-website-profile .rmc-profile-columns,
  .rmc-website-profile .rmc-profile-gallery { grid-template-columns: minmax(0,1fr); }
  .rmc-website-profile .rmc-profile-heading { font-size: min(var(--rmc-profile-size,28px),32px); }
  .rmc-website-profile .rmc-profile-banner-title { font-size: 26px; }
}
@container (max-width: 400px) {
  .rmc-website-profile :where(.rmc-profile-logo,.rmc-profile-heading,.rmc-profile-text,.rmc-profile-richtext,.rmc-profile-figure,.rmc-profile-action,.rmc-profile-columns,.rmc-profile-gallery,.rmc-profile-social,.rmc-profile-contact,.rmc-profile-tagline) { padding-left: 16px; padding-right: 16px; }
}

.rmc-website-profile .rmc-profile-banner { position: relative; overflow: hidden; }
.rmc-website-profile .rmc-profile-banner-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .35; }
.rmc-website-profile :where(.rmc-profile-banner-title,.rmc-profile-banner-subtitle) { position: relative; }
.rmc-website-profile .rmc-profile-gallery figure { min-width: 0; margin: 0; }

.rmc-website-profile .rmc-profile-inquiry-help { margin: 12px 0 0; font-size: 13px; line-height: 1.5; color: #666; }
.rmc-website-profile .rmc-profile-label[hidden] { display: none; }
